package deadlock

func DeadlockResearch() {
	//channel在多个goroutine之前，线程安全 --> 如何保证？使用锁！
	var msg chan int
	msg = make(chan int) //无缓冲
	msg <- 1             //当放数据进channel时候，相当于写，这个时候会阻塞，阻塞之前会先获取一把锁。
	// 这把锁什么时候释放呢？肯定要等消费之后，因为这个channel 没有缓存空间。而我们没有在放数据之前启动消费者，因此产生了死锁
	//1.一个无缓冲的channel,在启动消费者之前，就放数据进去，会产生deadlock
}
